import request from '@/utils/request'
const base = 'social/authorize'


/**
 * 第三方登录
 * @param {number} param - 包含三方平台标识和回调地址
 * @returns {Promise} - Axios请求的Promise对象
 */
export function signIn(param) {
    return request({
        url: `${base}/signin`,
        method: 'get',
        params: param,
    })
}



/**
 * 获取三方授权地址
 * @param {number} provider - 第三方提供商
 * @returns {Promise} - Axios请求的Promise对象
 */
export function getAuthurl(param) {
    return request({
        url: `${base}/authurl`,
        method: 'get',
        params: param,
    })
}


/**
 * 获取三方授权回调
 * @param {number} provider - 第三方提供商
 * @returns {Promise} - Axios请求的Promise对象
 */
export function oauthCallback(param) {
    return request({
        url: `${base}/callback`,
        method: 'get',
        params: param,
    })
}


/**
 * 获取第三方授权用户信息
 * @param {string} provider - 第三方提供商名称
 * @param {string} code - 授权码
 * @param {string} redirectUrl - 回调地址
 * @returns {Promise} - 请求结果的 Promise 对象
 */
export function getOAuthUser(provider, code, redirectUrl) {
    return request({
        url: `${base}/${provider}/userInfo`,
        method: 'get',
        params: { code, redirectUrl },
    })
}


